Efficient Coverability Analysis by Proof Minimization
نویسندگان
چکیده
We consider multi-threaded programs with an unbounded number of threads executing a finite-state, non-recursive procedure. Safety properties of such programs can be checked via reduction to the coverability problem for wellstructured transition systems (WSTS). In this paper, we present a novel, sound and complete yet empirically much improved solution to this problem. The key idea to achieve a compact search structure is to track uncoverability only for minimal uncoverable elements, even if these elements are not part of the original coverability query. To this end, our algorithm examines elements in the downward closure of elements backward-reachable from the initial queries. A downside is that the algorithm may unnecessarily explore elements that turn out coverable and thus fail to contribute to the proof minimization. We counter this effect using a forward search engine that simultaneously generates (a subset of all) coverable elements, e.g., a generalized Karp-Miller procedure. We demonstrate in extensive experiments on C programs that our approach targeting minimal uncoverability proofs outperforms existing techniques by orders of magnitude.
منابع مشابه
An SMT-Based Approach to Coverability Analysis
Model checkers based on Petri net coverability have been used successfully in recent years to verify safety properties of concurrent shared-memory or asynchronous message-passing software. We revisit a constraint approach to coverability based on classical Petri net analysis techniques. We show how to utilize an SMT solver to implement the constraint approach, and additionally, to generate an i...
متن کاملContext-Free Parallel Communicating Grammar Systems Are Not Linear Space
Two contradictory results state that the synchronized parallel communicating grammar systems with context-free components (CF-PCGS) are either Turing complete or less expressive than contextsensitive grammars. We show that the latter result is incorrect. Indeed, we discover that the proof of this result relies on coverability trees for CF-PCGS, but that such coverability trees do not contain en...
متن کاملImprovements in Coverability Analysis
In simulation-based verification users are faced with the challenge of maximizing test coverage while minimizing testing costs. Sophisticated techniques are used to generate clever test cases and to determine the quality attained by the tests. The latter activity, which is essential for locating areas of the design that need to have more tests, is called test coverage analysis. We have previous...
متن کاملOn the Efficient Computation of the Minimal Coverability Set of Petri Nets
The minimal coverability set (MCS) of a Petri net is a finite representation of the downward-closure of its reachable markings. The minimal coverability set allows to decide several important problems like coverability, semi-liveness, place boundedness, etc. The classical algorithm to compute the MCS constructs the Karp&Miller (KM) tree [8]. Unfortunately the KM tree is often huge, even for sma...
متن کاملOn the Efficient Computation of the Minimal Coverability Set for Petri Nets
The minimal coverability set (MCS) of a Petri net is a finite representation of the downward-closure of its reachable markings. The minimal coverability set allows to decide several important problems like coverability, semiliveness, place boundedness, etc. The classical algorithm to compute the MCS constructs the Karp&Miller tree [1]. Unfortunately the K&M tree is often huge, even for small ne...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
عنوان ژورنال:
دوره شماره
صفحات -
تاریخ انتشار 2012